home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet bezpieczenstwa / mini Pentoo LiveCD 2006.1 / mpentoo-2006.1.iso / modules / nessus-2.2.8.mo / usr / lib / nessus / plugins / smtp_ms01-037.nasl < prev    next >
Text File  |  2005-01-14  |  2KB  |  89 lines

  1. #
  2. # This script was written by Renaud Deraison <deraison@cvs.nessus.org>
  3. #
  4. # See the Nessus Scripts License for details
  5. #
  6. #
  7. # Thanks to Joao Gouveia
  8.  
  9. if(description)
  10. {
  11.  script_id(10703);
  12.  script_bugtraq_id(2988);
  13.  script_version ("$Revision: 1.19 $");
  14.  script_cve_id("CVE-2001-0504");
  15.  name["english"] = "SMTP Authentication Error";
  16.  name["francais"] = "SMTP Authentication Error";
  17.  script_name(english:name["english"],
  18.           francais:name["francais"]);
  19.  
  20.  desc["english"] = "
  21. The remote SMTP server is vulnerable to a flaw in its authentication
  22. process. 
  23.  
  24. This vulnerability allows any unauthorized user to successfully
  25. authenticate and use the remote SMTP server.
  26.  
  27. An attacker may use this flaw to use this SMTP server
  28. as a spam relay.
  29.  
  30. Solution : see http://www.microsoft.com/technet/security/bulletin/MS01-037.mspx.
  31.  
  32. Risk factor : High";
  33.  
  34.  
  35.  script_description(english:desc["english"]);
  36.             
  37.  
  38.  summary["english"] = "Checks if the remote mail server can be used as a spam relay"; 
  39.  summary["francais"] = "VΘrifie si le serveur de mail distant peut etre utilisΘ comme relais de spam";
  40.  script_summary(english:summary["english"],
  41.           francais:summary["francais"]);
  42.  
  43.  script_category(ACT_GATHER_INFO);
  44.  
  45.  script_copyright(english:"This script is Copyright (C) 2001 Renaud Deraison",
  46.            francais:"Ce script est Copyright (C) 2001 Renaud Deraison");
  47.  
  48.  family["english"] = "SMTP problems";
  49.  family["francais"] = "ProblΦmes SMTP";
  50.  script_family(english:family["english"], francais:family["francais"]);
  51.  script_dependencie("find_service.nes", "sendmail_expn.nasl");
  52.  script_exclude_keys("SMTP/wrapped", "SMTP/qmail", "SMTP/postfix");
  53.  script_require_ports("Services/smtp", 25);
  54.  exit(0);
  55. }
  56.  
  57. #
  58. # The script code starts here
  59. #
  60.  
  61. include("smtp_func.inc");
  62.  
  63. port = get_kb_item("Services/smtp");
  64. if(!port)port = 25;
  65. if(get_port_state(port))
  66. {
  67.  soc = open_sock_tcp(port);
  68.  if(!soc)exit(0);
  69.  data = smtp_recv_banner(socket:soc);
  70.  if(!egrep(pattern:"^220.*", string:data))exit(0);
  71.  
  72.  cmd = string("HELO example.com\r\n");
  73.  send(socket:soc, data:cmd);
  74.  data = recv_line(socket:soc, length:1024);
  75.  cmd = string("AUTH GSSAPI\r\n");
  76.  send(socket:soc, data:cmd);
  77.  r = recv_line(socket:soc, length:4096);
  78.  
  79.  if(ereg(string:r, pattern:"^334 .*"))
  80.  {
  81.   cmd = string(".\r\n");
  82.   send(socket:soc, data:cmd);
  83.   r = recv_line(socket:soc, length:4096);
  84.   if(ereg(string:r, pattern:"^235 .*successful.*"))security_warning(port);
  85.  }
  86.  send(socket:soc, data:string("QUIT\r\n"));
  87.  close(soc);
  88. }
  89.